iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 12
1

本系列文的環境狀態,可點擊此連結後花園環境參考

今天會把昨天講的 ->、=>、:: 功能,整合在同一個網頁畫面,大家可以試着拆解範例程式碼,對照畫面來看看對應的功能跟function。

這樣應該就會更熟悉這幾個符號的使用了。

♤ -> 、 :: 的範例程式碼

<?php

class Flower {

    const title = "類別常數_花名資料";       //  類別常數,const 常數名稱 = 值 ;

    public $int_Id;
    public $str_Name;
    public $str_Sex;

    static public $countNum = 0;


    function setData($Id, $Name, $Sex){

        $this -> int_Id = $Id;                  //  物件名稱 -> 屬性 = [值] ;
        $this -> str_Name = $Name;
        $this -> str_Sex = $Sex;
    }

    public function showData(){

        echo "編號:" . $this -> int_Id . "<br>";
        echo "花名:" . $this -> str_Name . "<br>";
        echo "性別:" . $this -> str_Sex . "<br>";
        echo "*****" . self::title . "結束*****<br>";     //  在同類別中可使用「self::常數名稱」
    }


    static function showMsg($msg){

        return $msg;
    }


    function __construct(){         //  建構

        Flower::$countNum++;       //  物件建立時,即靜態成員,++加1
    }


    function __destruct(){          //  解構

        Flower::$countNum--;       //  物件刪除時,即靜態成員,--減1
    }

}

echo "*****" . Flower::title . "開始*****<br>";          //  類別名稱::常數名稱
echo Flower::showMsg("*****msg開頭***** <br>");    //  類別名稱::function 靜態方法名稱()

$flowOb1 = new Flower;
$flowOb1  -> setData(1, "Ren", "男");                //  物件名稱 -> 方法(值)
$flowOb1  -> showData();                             //  物件名稱 -> 方法

$flowOb2 = new Flower;
$flowOb2 -> setData(2, "Rose", "女");
$flowOb2 -> showData();

$flowOb3 = new Flower;
$flowOb3 -> setData(3, "Lily", "女");
$flowOb3 -> showData();

echo Flower::showMsg("*****msg末行*****<br>");     //  類別名稱::function 靜態方法名稱()

echo "目前的花種物件有" . Flower::$countNum . "個。";      //  類別名稱::$靜態成員的值
echo "<br><br><br>";

?>


♤ 上方程式碼,如果用網頁方式開啟可看見下圖


♤ 爲了讓大家比較好理解,將echo的程式碼跟顯示的頁面做個對照


♤ 接著是 => 的部份,一樣放置範例程式碼及對照網頁圖

<?php

echo "*****用樹來講=>,跟陣列有關呢***** <br>";

$treegarden = [                        //  使用array
    'tree1' => '松樹',                 //   key => value
    'tree2' => '櫻花樹',
    'tree3' => '紅檜',
    'tree4' => '相思樹',
    'tree5' => '柳樹',
];

echo $treegarden['tree3'] . "<br>";

echo "這次先來種個". $treegarden['tree2'] . "和" . $treegarden['tree5'] . "吧!<br>";

?>

♤ 網頁對照圖

今天就先這樣囉!
希望對於跟 -> 、 :: 、 => 不懂的看倌們能有所幫助^^。


上一篇
✾後花園D11✾-我只是想搞懂 -> 、 => 、 :: , 上集
下一篇
✾後花園D13✾-你的MVC是我的MVC嗎?
系列文
在後花園遇見LP,Laravel及PHP的甜蜜糾纏,火熱上映49
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言